草庐IT

java - 如何仅运行 30 分钟的 java 函数

全部标签

ruby - 如何优化 ActiveRecord find_in_batches 查询?

我正在使用Rails4.0.0和Ruby2.0.0。我的Post(如在博客文章中)模型与用户相关联,该用户具有用户的user_name、first_name、last_name的组合。我想迁移数据,以便通过外键(即用户ID)将帖子关联到用户。我在posts表中有大约1100万条记录。我在Linux服务器上使用rake任务运行以下代码来迁移数据。然而,我的任务一直被服务器“杀死”,大概是由于rake任务,特别是下面的代码,消耗了太多内存。我发现将batch_size降低到20并将sleep(10)增加到sleep(60)允许任务运行更长的时间,在不被杀死的情况下总共更新更多的记录,但需要

ruby - 如何解析 "Your bundle only supports platforms ["x86-mingw3 2"] but your local platforms are ["ruby​​", "x86_64-linux"]"

我正在Windows机器上构建一个Rails站点,但是当我检查我的Gemfile.lock时,我在我的Travis构建中遇到以下错误:Yourbundleonlysupportsplatforms["x86-mingw32"]butyourlocalplatformsare["ruby","x86_64-linux"],andthere'snocompatiblematchbetweenthosetwo列表这是完整的日志:https://travis-ci.org/bikebike/BikeBike/builds/222395810#L654我查看了我的Gemfile.lock并指出:

ruby - 如何从 Ruby 中访问 gem 的版本?

如何仅使用Ruby获取gem的版本?我宁愿不使用系统调用并将其grep到shell输出中,如下所示:`gemsearchpassenger`.scan(/(?:\(|,*)([^,)]*)/).flatten.first=>"2.2.9"我不能以某种方式得到它吗:Gem::Version我只是不知道如何指定我想要的gem,就像在这种情况下我想获得Passengergem的最新版本。 最佳答案 rubygems'API有据可查。您一直在寻找的示例:>>>require'rubygems'>>>si=Gem::SourceIndex.f

ruby - 如何测试一个 block 是否为空?

我有一段代码,我想在不运行代码块内部的情况下测试正文是否为空。这可能吗? 最佳答案 sourcifygem添加了一个Proc#to_source方法:>>require'sourcify'=>true>>p=Proc.new{}=>#>>p.to_source=>"proc{}"一旦将block作为字符串,就很容易看出花括号之间是否有注释(或只有空格)。 关于ruby-如何测试一个block是否为空?,我们在StackOverflow上找到一个类似的问题: h

ruby - 从 vim 运行 ruby​​ 代码

在Vim中编辑ruby​​程序后,是否可以在编辑器中运行它,而不是使用命令行? 最佳答案 在Vim中,你可以运行当前缓冲区::!ruby%它可能有用也可能没用,具体取决于您的用例。同样,您可以使用:!command调用任何shell命令 关于ruby-从vim运行ruby​​代码,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/7042622/

ruby - 如何在 capistrano 中使用 --trace 运行 rake?

我希望capistrano使用--trace调用rake,这样我就可以弄清楚它失败的原因。我该怎么做呢?set:rake'rake--trace'不起作用。 最佳答案 我找到的最好的方法是:set:rake,"#{rake}--trace"这样您就不会覆盖rake变量。例如,如果您使用bundler,这之前设置为:“bundleexecrake”之后:“bundleexecrake--trace” 关于ruby-如何在capistrano中使用--trace运行rake?,我们在Stac

ruby-on-rails - 我如何找到特定的延迟工作(不是通过 id)?

Delayed::Job将您的类、方法和参数序列化到处理程序字段中。我们目前求助于将这种序列化方法硬编码到我们的代码中。这太恶心了。我们应该如何构建处理程序以便我们可以查找现有的排队作业? 最佳答案 这是我做的:1)添加两个新列到delayed_jobs表db/migrations/20110906004963_add_owner_to_delayed_jobs.rbclassAddOwnerToDelayedJobs2)添加多态关联到Delayed::Job模型config/initializers/delayed_job.rbc

ruby-on-rails - 如何允许使用 GRAPE API 下载二进制文件

我想允许使用ruby​​的GrapeAPI下载二进制文件(.p12文件)。这就是我正在尝试的。get'/download_file'dopkcs12=generate_pkcsfilecontent_type('application/octet-stream')body(pkcs12.der)end使用ActionController的等效代码是beginpkcs12=generate_pkcsfilesend_data(pkcs12.der,:filename=>'filename.p12')end问题是使用API下载的文件似乎是一个文本文件,每个字符都嵌入了'\ufffd'前缀,

ruby - 如何在 rspec 测试中定义一个可以被辅助函数访问的简单全局变量

我不知道如何在rspec测试中使用一个简单的全局变量。这似乎是一个微不足道的功能,但经过多次目击后我还没有找到解决方案。我想要一个可以在整个主规范文件和辅助规范文件中的函数中访问/更改的变量。这是我目前所拥有的:require_relative'spec_helper.rb'require_relative'helpers.rb'let(:concept0){''}describe'ICETesting'dodescribe'step1'doit"Populatessuggestionscorrectly"doconcept0="tg"selectConcept()#inhelperf

ruby-on-rails - 如何获取具有 min has_many 记录的记录(加入数据)

用户.rbhas_many:properties属性.rbbelongs_to:user我想获得一个具有最小属性的用户,例如wiseformax。我找不到任何相关的查询 最佳答案 要找到具有min属性的用户,您可以简单地做,User.joins(:properties).group("properties.user_id").order("count(properties.user_id)desc").last并找到具有max属性的用户,User.joins(:properties).group("properties.user_i